Evaluation information provision system and evaluation information provision method

ABSTRACT

In an evaluation information provision system, subject&#39;s motion data is stored in association with attributes. When an attribute is assigned, the evaluation information provision system selects feature data from a plurality of the subject&#39;s motion data associated with the assigned attribute. The evaluation information provision system calculates a score for the assigned attribute, for the user&#39;s motion, using a statistical distance between the selected feature data and the user&#39;s motion data. The calculated score is displayed, for example, as a screen.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a U.S. National Stage of International PatentApplication No. PCT/JP2016/080827, filed Oct. 18, 2016, which claims thebenefit of Japanese Patent Application No. 2015-207449, filed Oct. 21,2015, both herein fully incorporated by reference.

TECHNICAL FIELD

The present disclosure relates to an evaluation information provisionsystem and an evaluation information provision method, and specificallyto an evaluation information provision system and an evaluationinformation provision method that generate information for evaluating auser's motion using two or more sets of motion data stored in a storagedevice and user's motion data.

BACKGROUND ART

Conventionally, there is a known technique that creates a motion modelby analyzing motion data representing respective physical motions of aplurality of persons. For example, NPD 1, NPD 2, and NPD 3 disclosemodeling of a motion for a ski robot. PTD 1 and NPD 4 disclose modelingof a motion for running. PTD 2 discloses modeling of a motion for a golfswing. PTD 3 and PTD 4 disclose a process using a score determined byusing a motion model.

PRIOR ART DOCUMENTS Patent Documents

-   PTD 1: Japanese Patent No. 5314224-   PTD 2: Japanese Patent Laying-Open No. 2014-97104-   PTD 3: Japanese Patent Laying-Open No. 2010-119560-   PTD 4: Japanese Patent Laying-Open No. 2003-216774

Non-Patent Documents

-   NPD 1: Yoneyama, T., Scott, N., and Kagawa, H., “Timing of force    application and joint angles during a long ski turn”, [online],    issued in 2006, [searched on Apr. 3, 2015], The Engineering of Sport    6, pages 293-298. Springer, N.Y.,    <URL:http://link.springer.com/chapter/10.1007%2F978-0-387-46050-5_52#page-1>-   NPD 2: Kondo, A., Doki, H., and Hirose, K, “Motion analysis and    joint angle measurement of skier gliding on the actual snow field    using inertial sensors”, [online], issued in 2013, [searched on Apr.    3, 2015], Procedia Engineering, 60 pages 307-312,    <URL:http://ac.els-cdn.com/S1877705813011326/1-s2.0-S1877705813011326-main.pdf?_tid=256f2e7e-56e0-11e5-a103-00000aab0f01&acdnat=1441795820_726f173706bce887290572622f0d358f>-   NPD 3: Shinichi Yamagiwa, Hiroyuki Ohshima and Kazuki Shirakawa,    “Skill Scoring System for Ski's Parallel Turn, issued in 2014,    [searched on Apr. 3, 2015], In Proceedings of International Congress    on Sport Sciences Research and Technology Support (icSPORTS 2014),    pp. 121-128, SCITEPRESS, October 2014-   NPD 4: Yoshinobu Watanabe, and other five, Evaluation and    Quantification of Running Form, symposium, November 2013, [searched    on Apr. 3, 2015], Sports and Human Dynamics 2013, symposium papers,    the Japan Society of Mechanical Engineers

SUMMARY OF INVENTION Technical Problem

However, the models for motions proposed by conventional techniques wereused uniformly for the motion analysis. It therefore may not be saidthat conventional techniques have been able to evaluate a user's motionwith various references.

The present disclosure is conceived in the aspect of such a situation,and an objective of the present disclosure is that an evaluationinformation provision system allows a user to evaluate the user's motionwith various references against the user's motion.

Solution to Problem

According to an aspect of the present disclosure, an evaluationinformation provision system is provided for outputting informationevaluating a motion of a user, using two or more sets of motion data ofa subject stored in association with an attribute and motion data of theuser. The evaluation information provision system includes: a firstcalculation unit configured to calculate a statistical distance betweentwo or more sets of motion data and the motion data of the user; anacquisition unit configured to acquire assignment of an attribute; asecond calculation unit configured to calculate a score of the user forthe assigned attribute; and an output unit configured to output thescore of the user calculated by the second calculation unit. The secondcalculation unit is configured to select feature data representing afeature of the attribute acquired by the acquisition unit, based on thestatistical distance calculated by the first calculation unit for motiondata associated with the attribute acquired by the acquisition unitamong the two or more sets of motion data, and to calculate the score ofthe user for the attribute acquired by the acquisition unit, using astatistical distance between the motion data associated with theattribute acquired by the acquisition unit and the feature data, and astatistical distance between the motion data of the user and the featuredata.

Motion data may represent each of motions of one or more parts of asubject or a user.

Motion data may represent each of motions of one or more parts in a tooloperated by a subject or a user.

The acquisition unit may accept input of assignment of an attribute.

The attribute may include a classification for superiority/inferiorityof a motion.

The classification may be a diversity of marathon running times.

The attribute may include a classification for a property other thansuperiority/inferiority of a motion.

The classification may distinguish a person who makes a motion.

The classification may distinguish a tool used in a motion.

The second calculation unit may be configured to select motion datahaving a smallest mean value of statistical distances from other motiondata, as the feature data, from among motion data associated with theattribute acquired by the acquisition unit.

The second calculation unit may be configured to set an order for thestatistical distance from the feature data, in the motion data of theuser and the motion data associated with the attribute acquired by theacquisition unit, and to calculate the score of the user based on theorder in the user's motion data.

The second calculation unit may be configured to calculate the score ofthe user for each of the motion data of the user at a plurality oftimings, and the output unit may be configured to output the score ofthe user for each of the plurality of timings.

The output unit may further output information evaluating whether achange of scores at the plurality of timings rises or falls over time.

The acquisition unit may acquire assignment of different kinds ofattributes.

The acquisition unit may be configured to acquire assignment of anattribute of a first kind and an attribute of a second kind. Theattribute of the second kind may include two or more kinds ofattributes. The second calculation unit may be configured to acquirefeature data that is motion data representing a feature of the attributeof the first kind, for each kind of the attributes of the second kind.The second calculation unit may calculate the score of the user for theattribute of the first kind, for each kind of the attributes of thesecond kind. The output unit may be configured to output the score ofthe user for the attribute of the first kind, for each kind of theattributes of the second kind.

The output unit may be configured to compare the scores for differentkinds of the attributes of the second kind to output informationevaluating the degree of relevancy to the attribute of the first kind intwo or more kinds of attributes of the second kind.

The output unit may be further configured to output a statisticaldistance calculated by the first calculation unit for motion dataassociated with an attribute to be compared with the attribute of thefirst kind, in a manner that identifies each of the attribute of thefirst kind and the attribute to be compared.

According to another aspect of the present disclosure, an evaluationinformation provision method is provided to output informationevaluating a motion of a user, using two or more sets of motion data ofa subject stored in association with an attribute and motion data of theuser. The evaluation information provision method includes the steps of:calculating a statistical distance between the two or more sets ofmotion data and the motion data of the user; acquiring assignment of anattribute; selecting feature data representing a feature of the acquiredattribute from a plurality of motion data of the acquired attribute,based on a statistical distance calculated for motion data associatedwith the acquired attribute among the two or more sets of motion data,and calculating a score of the user for the acquired attribute, using astatistical distance between motion data associated with the acquiredattribute and the feature data and a statistical distance between themotion data of the user and the feature data; and outputting thecalculated score of the user.

Advantageous Effects of Invention

According to an aspect of the present disclosure, the evaluationinformation provision system selects feature data from a plurality ofmotion data associated with an attribute, based on the statisticaldistance for motion data associated with the attribute, and thencalculates a score of the user for the assigned attribute using theselected feature data and the user's motion data.

With this configuration, the feature data to be selected changesaccording to which kind of motion data is stored as the subject's motiondata, and the calculated score changes accordingly. Therefore, theevaluation information provision system evaluates the user's motion withvarious references.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram for explaining an overview of an evaluationinformation provision system.

FIG. 2 is a diagram for explaining an overview of processing in theevaluation information provision system.

FIG. 3 is a diagram for explaining an overview of processing in theevaluation information provision system.

FIG. 4 is a diagram for explaining an overview of processing in theevaluation information provision system.

FIG. 5 is a diagram schematically showing a hardware configuration of aWeb server.

FIG. 6 is a diagram showing a main hardware configuration of a userterminal.

FIG. 7 is a diagram showing an example of functional blocks of theevaluation information provision system shown in FIG. 1.

FIG. 8 is a diagram for explaining a method of calculating a statisticaldistance between motion data.

FIG. 9 is a diagram schematically showing a manner in which thecalculated distance between motion data is stored.

FIG. 10 is a diagram showing an example of the screen appearing on theuser terminal for assigning an attribute.

FIG. 11 is a diagram for explaining a method of calculating a user'sscore.

FIG. 12 is a diagram for explaining a method of calculating a user'sscore.

FIG. 13 is a diagram showing an example of the screen displaying theuser's score.

FIG. 14 is a diagram for explaining the concept of calculation of ascore.

FIG. 15 is a diagram showing an example of display of history of scores.

FIG. 16 is a diagram showing two screen examples representing thetendency of user's motions.

FIG. 17 is a diagram showing another example of history of scores.

FIG. 18 is a diagram showing an example of a screen for acceptingassignment of two kinds of attributes.

FIG. 19 is a diagram showing an example of a display screen of thecalculation results of three scores.

FIG. 20 is a diagram showing an example of the screen displaying thedistances calculated for the subject's motion data belonging to aplurality of competing attributes, in manners different from each other.

FIG. 21 is a diagram for explaining the tendencies shown in graphs G11to G13 in FIG. 20 in a simplified form.

FIG. 22 is a diagram for explaining an input manner of motion data inthe evaluation information provision system in a second embodiment.

FIG. 23 is a block diagram showing a hardware configuration of a sensordevice in the second embodiment.

FIG. 24 is a diagram showing a specific example of detection output ofthe sensor device.

FIG. 25 shows an example of plots in the second embodiment.

FIG. 26 shows another example of plots in the second embodiment.

FIG. 27 is a diagram showing an example of display of the attributespecified as the user's swing type on the user terminal.

DESCRIPTION OF EMBODIMENTS

Embodiments of the present disclosure will be described below withreference to the drawings. In the following description, the same partsare denoted with the same reference signs. Their names and functions arealso the same. Therefore, a detailed description thereof will not berepeated.

First Embodiment

<1. Configuration Overview of Evaluation Information Provision System>

FIG. 1 is a diagram for explaining the overview of an evaluationinformation provision system. The evaluation information provisionsystem provides a user with information for evaluating the user'smotion, based on data for the user's motion. In the evaluation, data formotions of a large number of subjects is used. As used in the presentdescription, the person to be provided with information is called“user”, and the person who provides data to be utilized for provision ofinformation is generally called “subject”. There may be a single subjector there may be a plurality of subjects. In particular, when database100 uses big data as data representing subject's motions, the number ofsubjects is large.

As shown in FIG. 1, the evaluation information provision system includesa database 100 storing subject's motion data, a Web server 900, a userterminal 600 on which a user views the provided information, a runningmachine 800 generating data for the user's motion, and an arithmeticprocessing unit 500 processing data generated from running machine 800and registering the processed data in Web server 900.

Running machine 800 includes markers 831 to 836 attached to six parts(shoulder, elbow, wrist, base of thigh, knee, ankle) on the right sideof a user T1. User T1 runs on a treadmill 810 while wearing markers 831to 836. In running machine 800, two high-speed cameras 820 captureimages of markers 831 to 836 and input the captured images to arithmeticprocessing unit 500. Arithmetic processing unit 500 is implemented, forexample, by a general-purpose computer installed with an application forimage processing. Arithmetic processing unit 500 analyzes the inputimage to acquire the path and/or the moving speed of each of markers 831to 836 and generates motion data of user T1 based on the path and/or themoving speed. An attribute of the user is further input to arithmeticprocessing unit 500. Arithmetic processing unit 500 outputs theattribute and the motion data of the user to Web server 900. Web server900 outputs information evaluating the user's motion, using theattribute and the motion data of the user. In FIG. 1, the parts denotedas markers 831 to 836 are an example of a combination of partsrepresenting the user's characteristic motion. The markers may beattached to other parts of the user as long as data representing theuser's motion can be acquired.

In the first embodiment, the user requests information for evaluatingthe user's motion from Web server 900 through user terminal 600. Inresponse, Web server 900 generates information serving as a referencefor evaluation, using data for subject's motions stored in database 100.Web server 900 then outputs information evaluating the user's motion touser terminal 600, using the data for the user's motion and thereference generated as described above. The user views the outputinformation on user terminal 600. An example of user terminal 600 is apersonal computer. Another example of user terminal 600 is a smartphone.User terminal 600 is not limited to these examples as long as it has adisplay screen.

The motion to be evaluated may be the motion of a person different fromthe person who views the evaluation. That is, for example, informationevaluating the motion of user T1 may be viewed by the manager of user T1on user terminal 600.

<2. Processing Overview in Evaluation Information Provision System>

FIG. 2 to FIG. 4 are diagrams for explaining the processing overview inthe evaluation information provision system. First, as shown in FIG. 2,in database 100, data representing a subject's motion (hereinafterreferred to as “motion data”) is stored in association with theattribute of the data. An example of the data representing a motion isbiomechanics data such as joint angle and angular velocity. Anotherexample is the acceleration in each of the directions of axes at rightangles to each other (for example, x-axis, y-axis, and z-axis) asdetected by an accelerometer attached to the user. Yet another exampleis the angular velocity in planes at right angles to each other (xyplane, yz plane, and zx plane) as detected by a gyro sensor attached tothe user.

An example of the attribute is the attribute of the person who makes amotion corresponding to motion data. The person's attribute is, forexample, name, gender, age, height, weight, monthly training amount, orfull marathon running time. Another example of the attribute is thedate, time or place (geographical information in the region where themotion is made) at which the motion data is acquired. Yet anotherexample of the attribute is information that distinguishes the tool (forexample, running shoes) that the person who makes a motion uses in themotion. In the present disclosure, the attribute may include informationthat distinguishes the superiority/inferiority of the motion, such asrunning time in a full marathon. The attribute may include informationthat distinguishes the property other than the superiority/inferiorityof the motion, such as the name or the gender of the person who performsthe motion.

In the evaluation information provision system, a set of motion data andattribute may be provided, for example, as big data from every datasource (server device and the like) on a network.

Then, as shown in item (1) in FIG. 2, the evaluation informationprovision system outputs the motion data in database 100 together withthe attribute associated with each motion data to an SVM (Support VectorMachine). In the evaluation information provision system in the firstembodiment, the SVM is implemented by the function implemented byexecution of a program for SVM in a computer that configures Web server900. Clustering of motion data is thus executed as shown as graph G1 inFIG. 3.

More specifically, graph G1 in FIG. 3 schematically shows anN-dimensional graph including N factors in two dimensions.

For example, a dot dpi represents a combination of N sets of motion dataof a certain subject.

Web server 900 generates a hyperplane covering motion data, as denotedas hyperplane H1 in graph G1, by clustering. When the number ofdimensions of motion data is N, hyperplane H1 in graph G1 in FIG. 3 isan N-dimensional plane. The number of dimensions of motion data equalsto that of the kinds of data included in the motion data. For example,when four kinds of data, namely, the joint angle of the elbow, the jointangle of the knee, the angular velocity of the elbow, and the angularvelocity of the knee, are employed as motion data, hyperplane H1 is afour-dimensional plane.

Furthermore, clustering by SVM is performed to calculate the maximizeddistance for the limitation of the hyperplane, for each motion data(item (2) in FIG. 2).

Subsequently, the evaluation information provision system processes themotion data by the method called kernel method. Thus, as shown by dotdpi and the like in graph G2 in FIG. 3, each point of motion data isnonlinearly transformed.

After the nonlinear transformation as described above, the distancebetween motion data is calculated (“Calculate Distance” in FIG. 2).Here, as described later using mathematical expressions, the distance(statistical distance) from another motion data is calculated for eachmotion data (item (3) in FIG. 2).

Next, the evaluation information provision system accepts assignment ofan attribute, in “Select Skill”. The attribute may be assigned by theuser inputting an attribute or may be assigned by reading out anattribute registered in the evaluation information provision system inadvance. An example of the attribute to be assigned is that “the runningtime in a full marathon is over 2 hours under 3 hours”. Here, “therunning time in a full marathon” is the actually measured time when thesubject or the user actually ran a full marathon or the estimated finishtime in a full marathon for the subject or the user. The estimatedfinish time in a full marathon is the estimated time to complete a fullmarathon. The estimated finish time in a full marathon is calculated,for example, in accordance with the finish time in the past of eachperson and input by the person to each server. Another example of theattribute is that “the age is 20's”.

Then, the evaluation information provision system provides informationfor the user's motion as described in item (4) or item (5) in FIG. 2.

More specifically, in item (4) in FIG. 2, the evaluation informationprovision system visualizes the subject's motion data belonging to theassigned attribute and the user's motion data, using themultidimensional scaling method (MDS). GV1 in FIG. 4 illustrates thesubject's motion data belonging to attribute A (for example, “runningtime in full marathon is over 2 hours under 3 hours”) and the user'smotion data, by a two-dimensional graph according to themultidimensional scaling method.

In graph GV1, the distance between motion data belonging to theattribute for the subject's motion data belonging to the assignedattribute is illustrated according to the multidimensional scalingmethod. More specifically, the distance between motion data of attributeA is shown by area AR1. In graph GV1, point CA shows the feature datarepresenting the feature of attribute A that is selected in the mannerdescribed later. In graph GV1, the distance from the motion data ofattribute A for the user's motion data is shown by points PA and CA.

As shown in item (5) in FIG. 2, the evaluation information provisionsystem outputs the score of the user's motion for the assigned attributeas described above. The score of the user's motion is calculated usingthe statistical distance from the user's motion data to theaforementioned feature data. The details of the method of calculatingthe score will be described later.

<3. Hardware Configuration>

The hardware configuration of the main devices (Web server 900 and userterminal 600 in FIG. 1) in the evaluation information provision systemwill be described.

(1) Web Server 900

FIG. 5 is a diagram schematically showing the hardware configuration ofWeb server 900. As shown in FIG. 5, Web server 900 includes, as maincomponents, a CPU (Central Processing Unit) 910, an input unit 920 suchas a keyboard, a memory 930, a memory interface 940, and a communicationinterface 950. CPU 910, input unit 920, memory 930, memory interface940, and communication interface 950 are connected with each otherthrough an internal bus.

Memory 930 is implemented by a storage device such as a RAM (RandomAccess Memory) or a ROM (Read Only Memory). Memory 930 stores a programexecuted by CPU 910 and data used in execution of the program.

Memory interface 940 reads out data from an external storage medium 941.Storage medium 941 is removable from Web server 900. CPU 910 reads outdata stored in external storage medium 941 through memory interface 940and stores the data into memory 930. CPU 910 also reads out data frommemory 930 and stores the data into storage medium 941 through memoryinterface 940. The program executed by CPU 910 may be stored in storagemedium 941. Alternatively, the program executed by CPU 910 may bedownloaded through a network such as a public network and stored intomemory 930.

Communication I/F 950 is implemented by an antenna and a connector.

Communication I/F 950 transmits/receives data to/from another devicethrough wired communication or wireless communication. CPU 910 receivesa program, image data, text data, and the like from another devicethrough communication I/F 950 and transmits image data and text data toanother device.

CPU 910 executes a program stored in memory 930 or storage medium 941 tocontrol each unit of Web server 900.

(2) User Terminal 600

FIG. 6 is a diagram showing a main hardware configuration in userterminal 600. As shown in FIG. 6, user terminal 600 includes, as maincomponents, a CPU 610, a touch panel 620, a memory 630, a memoryinterface 640, and a communication interface 650.

Touch panel 620 may be of any type, such as resistive touch panel,surface acoustic wave touch panel, infrared touch panel, electromagneticinduction touch panel, and capacitance touch panel. Touch panel 620 mayinclude an optical sensor liquid crystal panel. Touch panel 620 detectsa touch operation on touch panel 620 with an external object at regularintervals and inputs the touch coordinates (touch position) to CPU 610.In other words, CPU 610 successively acquires the touch coordinates fromtouch panel 620.

Memory 630 is implemented by a storage device such as a RAM or a ROM.Memory 630 stores a program executed by CPU 610 and data used inexecution of the program.

Memory interface 640 reads out data from an external storage medium 641.Storage medium 641 is removable from user terminal 600. CPU 610 readsout data stored in external storage medium 641 through memory interface640 and stores the data into memory 630. CPU 610 also reads out datafrom memory 630 and stores the data into storage medium 641 throughmemory interface 640. The program executed by CPU 610 may be stored instorage medium 641. Alternatively, the program executed by CPU 610 maybe downloaded through a network such as a public network and stored intomemory 630.

Communication I/F 650 is implemented by an antenna and a connector.Communication I/F 650 transmits/receives data to/from another devicethrough wired communication or wireless communication. CPU 610 receivesa program, image data, text data, and the like from another devicethrough communication I/F 650 and transmits image data and text data toanother device.

CPU 610 executes a program stored in memory 630 or storage medium 641 tocontrol each unit of user terminal 600.

CPU 610 also transmits the provision of evaluation information to Webserver 900 and executes an application program for providing(displaying) evaluation information. CPU 610 executes the applicationprogram to display a screen such as screen IMG00 in FIG. 10 describedlater on touch panel 620.

<4. Functional Blocks>

FIG. 7 is a diagram showing an example of the functional blocks of theevaluation information provision system shown in FIG. 1.

Referring to FIG. 7, in the evaluation information provision system inthe first embodiment, database 100 functions as a motion data storagedevice storing subject's motion data. Database 100 may be implemented bya plurality of server devices connected to a variety of networks.

Arithmetic processing unit 500 functions as a motion data input devicewhich generates motion data of a subject as an input to database 100 andgenerates motion data of a user for input to Web server 900. Arithmeticprocessing unit 500 generates motion data of a user (and subject), forexample, using an image input from running machine 800. Arithmeticprocessing unit 500 further accepts input of attributes of a user (andsubject) and outputs the attribute to Web server 900. Here, arithmeticprocessing unit 500 functions as an attribute input device. The motiondata and the attribute may be inputted via Web server 900 from a deviceother than arithmetic processing unit 500.

Web server 900 functions as a skill distance calculation unit 901, adistance storage unit 902, a score calculation unit 903, a skillgrouping calculation unit 904, and an attribute storage unit 905.

More specifically, of the functions of Web server 900 shown in FIG. 7,skill distance calculation unit 901 and skill grouping calculation unit904 are implemented, for example, by CPU 910 (FIG. 5) executing apredetermined program. Distance storage unit 902, score calculation unit903, and attribute storage unit 905 are implemented by memory 930 (FIG.5).

Skill distance calculation unit 901 executes the aforementionednonlinear transformation and further calculates a statistical distancebetween motion data, for the subject's motion data and the user's motiondata input from the motion data storage device.

Distance storage unit 902 stores the distance from another motion datathat is calculated for each motion data.

Score calculation unit 903 calculates the score for the user's motion,using the statistical distance for the motion data calculated by skilldistance calculation unit 901.

Attribute storage unit 905 stores the user's attribute.

Skill grouping calculation unit 904 generates information for specifyinga skill (attribute) that gives a large effect to a motion, from theattributes calculated for a plurality of attributes, as illustrated inthe display in FIG. 19 described later.

<5. Calculation of Statistical Distance Between Motion Data>

Here, the calculation of the statistical distance between motion datawill be described. In the present description, the statistical distancebetween motion data may be simply referred to as “distance”.

The distance between motion data is calculated by processing the motiondata with a single-class SVM. The processing with a single-class SVM isas described below.

In the single-class SVM, as shown in Formula (1), a time point i (wherei is 1, 2 . . . n) of the motion data of a subject or a user is defined.In Formula (1), d is the kind of data included in a set of motion data.It can be said that the number of kinds represents the dimensions of themotion data.x _(u,i)∈R^(d)  (1)

Here, ϕ(x) represents mapping from input space X to feature space H.Then, by setting the hyperplane in feature space H such that itseparates more sets of motion data at a distance further from theorigin, we can describe any hyperplane in feature space H, as shown inFormula (2) below.[x∈X|<w,ϕ(x)>−ρ=0](ρ≥0)  (2)

Such a hyperspace can be obtained by solving Formula (3) below. Here,ξ_(i) is a slack variable. v is a positive parameter for adjusting theamount of possible position toward the origin.

$\begin{matrix}{{{\max\limits_{w,\xi,\rho}{{- \frac{1}{2}}{w}^{2}}} - {\frac{1}{vn}{\sum\limits_{i = 1}^{n}\xi_{i}}} + \rho}{{s.t.\;\left\langle {w,{\phi\left( x_{u,i} \right)}} \right\rangle} \geq {\rho - {\xi_{i}\mspace{14mu}{and}\mspace{14mu}\xi_{i}}} \geq {0\left( {{i = 1},\ldots\;,n} \right)}}} & (3)\end{matrix}$

The kernel function is represented by Formula (4) below.k:X×X→

  (4)

The kernel function in Formula (4) is defined as shown in Formula (5)below.k(x,x′)=<ϕ(x),ϕ(x′)>(k(x,x′)∈H)  (5)

Here, the dual is obtained as Formula (6) below.

$\begin{matrix}{{\max\limits_{\alpha,\rho}{\frac{1}{2}{\sum\limits_{i = 1}^{n}{\sum\limits_{j = 1}^{n}{\alpha_{i}\alpha_{j}{k\left( {x_{i}.x_{j}} \right)}}}}}}{{{s.t.\; 0} \leq \alpha_{i} \leq {\frac{1}{vn}\left( {{i = 1},\ldots\;,n} \right)\mspace{14mu}{and}\mspace{14mu}{\sum\limits_{i = 1}^{n}\alpha_{i}}}} = 1}} & (6)\end{matrix}$

This optimization can be solved using the quadratic programming solver.It is defined as Formula (7) below.k(x,x′)=exp(−∥x−x′∥ ²/(2σ²))  (7)

In Formula (7), σ>0, and σ is a parameter (kernel width) of the kernelfunction, which is usually a commonly used parameter.

The calculation of the distance between models for single-class SVMmodels of motion data described as “nonlinearly transformed motion data”will now be described.

Distance D_(uv) between two single-class SVM models “(α_(u), ρ_(u))” and“(α_(v), ρ_(v))” is expressed as Formula (8) below.

D uv = + ( 8 )

are arcs between two points and written as “˜c_(u)c_(v)˜”,“˜c_(u)p_(u)˜”, and “˜c_(v)p_(v)˜”, respectively in the description.

In Formula (8), each of u and v assigns a subject or a user. In Formula(8), c_(u), c_(v), p_(u), p_(v) are each defined using a unit circle CR1as shown in FIG. 8.

In FIG. 8, w_(u) is defined by Formula (9) below.w _(u)=Σ_(i)α_(i)ϕ(x _(ui))  (9)

Here, D_(uv) in Formula (8) is the normalized distance in a similarpoint of view as the Fischer ratio as described in, for example, twodocuments (“F. Desobry, M. Davy, and C. Doncarli, “An online kernelchange detection algorithm,” IEEE TRANSACTIONS ON SIGNAL PROCESSING,vol. 53, no. 8, pp. 2961-2974, 2005.” and “P. S. Riegel, “Athleticrecords and human endurance,” American Scientist May/June 1981, vol. 69,no. 3, p. 285, 1981.”).

The arc from point c_(u) to point p_(u) in Formula (8) (in the presentdescription, written as “˜c_(u)p_(u)˜” for the sake of convenience) isthe scale of variance of samples in ϕ(x) in the feature space. When thespread between samples increases, the length of the arc “˜c_(u)p_(u)˜”increases, and the margin represented by Formula (10) below is reduced.ρ_(u) /∥w _(u)∥  (10)

Therefore, the aforementioned distance exhibits the behavior predictedin the feature space (that is, as the spread increases, the valueincreases, and as the overlap increases, the value decreases).

Distance D_(uv) in Formula (8) is calculated using the parameterestimated as below. That is, the distance is represented by the unitcircle and the length of the arc between two vectors a and b (“˜ab˜”).The length of the arc between the vectors a and vector b is equivalentto the angle formed between these vectors. For the vectors a and vectorb, Formula (11) below holds.<a,b>=∥a∥∥b∥ cos(∠(a,b))=cos(∠(a,b))  (11)

Thus, the length of the arc between the two vectors a and b is derivedby Formula (12) below.

=arccos(<a,b>)  (12)

Therefore, the length of the arc of c_(u)c_(v) is derived according toFormula (15) using c_(u) derived from Formula (13) below and c_(v)derived from Formula (14).

$\begin{matrix}{c_{u} = {w_{u}\text{/}{w_{u}}}} & (13) \\{c_{v} = {w_{v}\text{/}{w_{v}}}} & (14) \\\begin{matrix}{= {\arccos\left( \frac{\left\langle {w_{u},w_{v}} \right\rangle}{{w_{u}}{w_{v}}} \right)}} \\{= {\arccos\left( \frac{\alpha_{u}^{\top}K_{uv}\alpha_{v}}{\sqrt{\alpha_{u}^{\top}K_{uu}\alpha_{u}}\sqrt{\alpha_{v}^{\top}K_{vv}\alpha_{v}}} \right)}}\end{matrix} & (15)\end{matrix}$

In Formula (15), K_(uv) is a kernel matrix. The kernel matrix isrepresented by element k (x_(u,j), x_(u,j)) for column i and row j.

Similarly, the length of the arc of c_(u)p_(u) is represented by Formula(16) below.

$\begin{matrix}{= {\arccos\left( \frac{\rho_{u}}{\sqrt{\alpha_{u}^{\top}K_{uu}\alpha_{u}}} \right)}} & (16)\end{matrix}$

As described above, the distance from the origin for each motion data iscalculated through the computation of the single-class SVM model. Then,the distance between nonlinearly transformed motion data is obtainedfrom the respective distances from the origin.

FIG. 9 is a diagram schematically showing a manner in which thecalculated distance between motion data is stored. CPU 910 of Web server900, for example, calculates the distances among all-to-all motion databy applying two or more sets of motion data (subject's motion data)registered in database 100. CPU 910 then stores the calculated distanceinto memory 930, for example, in the manner shown in FIG. 9. In thedistance matrix shown in FIG. 9, the distances calculated for theall-to-all combination of the five sets of motion data, namely, motiondata d(1) to d(5), are registered in the form of a matrix. In thedistance matrix, the distance between identical motion data (forexample, the distance between motion data d(1), the diagonal elementsextending from the upper left to the lower right of the matrix) has avalue of “0”.

<6. Score Calculation Method>

Referring now to FIG. 10 to FIG. 14, the method of score calculationprovided to the user will be described.

In the evaluation information provision system, the user assigns anattribute serving as the reference of a score. FIG. 10 is a diagramshowing an example of the screen for assigning an attribute that appearson user terminal 600. CPU 610 displays the screen, for example, byexecuting an application program for providing (displaying) evaluationinformation.

Screen IMG00 in FIG. 10 includes a field IA00 for inputting anattribute. In FIG. 10, “running time over 2 hours under 3 hours” isillustrated as an example of the attribute. User terminal 600 transmitsthe assigned attribute to Web server 900.

Web server 900, accepting assignment of the attribute, selects motiondata stored in association with the assigned attribute, from amongsubject's motion data. For example, when the attribute “running timeover 2 hours under 3 hours” is assigned, CPU 910 selects motion dataassociated with “running time over 2 hours under 3 hours” from themotion data stored in database 100.

CPU 910 of Web server 900 then calculates the distances betweennonlinearly transformed motion data for the selected subject's motiondata, by all-to-all calculation. When the distances calculated byall-to-all calculation have already been stored in memory 930, thematrix (FIG. 9) of the stored distances is read out.

CPU 910 then calculates the mean value of absolute values of thedistances, for each motion data. FIG. 11 shows the mean value calculatedfor each motion data of the matrix shown in FIG. 9, as matrix M1.

Here, the motion data having the lowest mean value is the motion data inwhich the sum of distances from another motion data belonging to theassigned attribute is the smallest, and therefore can be assumed asmotion data that represents the feature of the attribute.

CPU 910 then specifies motion data having the smallest mean value, asfeature data, from among motion data belonging to the assignedattribute. In the example illustrated as matrix M2 in FIG. 11, motiondata d(1) is specified as the feature data.

On the other hand, CPU 910 calculates the distance between the user'smotion data and each motion data belonging to the assigned attribute.Matrix M2 in FIG. 11 is a distance matrix in which the calculationresult for the user's motion data is added to the matrix in FIG. 9. Inmatrix M2 in FIG. 11, the calculation result for the user's motion datais illustrated as data for user d (X).

CPU 910 then ranks each motion data, based on the distance of eachmotion data from the feature data, as illustrated as frame F in matrixM3 in FIG. 11. As the distance from the feature data is closer, thegiven rank is closer to the first place. User (X) is ranked in thesecond place, as shown in Table T01 in FIG. 12.

CPU 910 then calculates the user's score S according to Formula (17)below.{(N−M+1)/N}×100=S  (17)(where M≥1)

In Formula (17), N is the number of sets of motion data belonging to theassigned attribute. M is the rank (“2” in the example of Table T01 inFIG. 12) of the user's mean value.

For example, as illustrated in the example of Table T01 in FIG. 12, whenthe number of sets of motion data belonging to the assigned attribute is“5” and the user's rank is “2”, the user's score S for the assignedattribute is calculated as “80 points” according to Formula (18) below.{(5−2+1)/5}×100=80  (18)

FIG. 13 is a diagram showing an example of the screen displaying theuser's score calculated according to Formula (17). CPU 910 transmits thecalculation result of the score to user terminal 600. In response, userterminal 600 displays screen IMG01 in FIG. 13 on touch panel 620. ScreenIMG01 displays the calculated score (80 points).

CPU 910 may additionally transmit the values N, M in Formula (17) touser terminal 600. In response, CPU 610 of user terminal 600 may displaythe values N, M on screen IMG01. Screen IMG01 in FIG. 13 includes acharacter string “2nd place in 5 people” based on the values N, M.

FIG. 14 is a diagram for explaining the concept of calculation of thescore in more details.

According to the present disclosure, when an attribute is assigned,feature data in the attribute is selected based on the distance betweenmotion data belonging to the attribute. The motion data in the assignedattribute is arranged in the order of distances from the feature data asshown in FIG. 14, and the user's motion data is also added to the orderof distances regarding the assigned attribute, focusing on the featuredata. In FIG. 14, the mark “●” shows the distance of each motion data inthe assigned attribute. Furthermore, “d_(1,p)” indicates the distance ofthe user's motion data. Line L1 represents the overall tendency of thedistances focusing on the feature data regarding the selected motiondata with respect to the assigned attribute.

The rank of the user's motion data for the distance from the featuredata is then specified. The user's score for the assigned attribute isthen calculated according to Formula (17), using the specified rank (“M”in Formula (17)) and the number of sets of motion data associated withthe assigned attribute (“N” in Formula (17)).

<7. Display of History of Scores>

In the evaluation information provision system in the presentdisclosure, CPU 910 may store the score calculated for the user inmemory 930 in association with the time when the calculation isconducted (or the time when the user's motion data used in thecalculation is generated).

CPU 910 then transmits the history of the calculated scores to userterminal 600 in accordance with the operation in user terminal 600. Inresponse, at user terminal 600, CPU 610 may display history of thecalculated scores on touch panel 620.

For example, the user designates a target period of display of history,using user terminal 600. First, CPU 610 transmits the designated periodto Web server 900. After that, CPU 910 acquires the history of scores inthe designated period and transmits the acquired history to userterminal 600. Finally, CPU 610 displays the history of scorestransmitted from Web server 900.

FIG. 15 is a diagram showing an example of the display of history ofscores. Screen IMG11 in FIG. 15 displays an example of the designatedperiod (Jul. 1, 2015 to Sep. 1, 2015) and the history of scorescalculated in this period. The history of scores displayed on screenIMG11 includes three scores, that is, “10 points” calculated on Jul. 1,2015, “22 points” calculated on Aug. 1, 2015, and “31 points” calculatedon Sep. 1, 2015. Each score is shown together with the number N of setsof motion data used in calculation of the score and the user's rank. Forexample, the score “10 points” calculated on Jul. 1, 2015 is showntogether with a character string “90th rank among 100 people”.

CPU 610 of user terminal 600 may generate information representing thetendency of the user's motions using the history of scores and displaythe generated information on touch panel 620. For example, CPU 610approximates the change of score over time by a straight line by theleast-squares method and specifies whether the change of scores tends torise or fall depending on whether the inclination of the approximatedstraight line is positive or negative.

FIG. 16 is a diagram showing an example of two screens illustrating thetendency of the user's motion.

Screen IMG12 in FIG. 16 shows a display example in the case where thescore tends to rise over time. Screen IMG12 includes a positive message“Your score is generally going up! Keep on going!”.

Screen IMG13 in FIG. 16 shows a display example in the case where thescore tends to fall over time. Screen IMG13 includes a message toencourage the user to improve, “Your score is generally going down. Youmay need to improve your form.”

The messages displayed on screen IMG12 and screen IMG13 are, forexample, stored in memory 630 in association with the respectivetendencies. CPU 610 selects the message associated with the specifiedtendency and displays the selected message on touch panel 620.

FIG. 17 is a diagram showing another example of the history of scores.Screen IMG21 in FIG. 17 displays each score included in the history,together with a graph that visualizes the statistical distance betweenthe motion data associated with the assigned designated attribute andthe user's motion data, for example, by the multidimensional scalingmethod.

More specifically, in screen IMG21, the “10 points” calculated on Jul.1, 2015 is displayed together with a graph G11. The “22 points”calculated on Aug. 1, 2015 is displayed together with a graph G12. The“31 points” calculated on Sep. 1, 2015 is displayed together with agraph F13. In each of graphs G11 to G13, a point PU represents theuser's motion data. A point PC represents the feature data in theassigned attribute. In each of graphs G11 to G13, as the score rises,the distance between point PU and point PC is shortened. Based on this,the distance between point PU and point PC is a distance changingaccording to the value of the score for the assigned attribute andtherefore can be recognized as an index of proficiency for theattribute, as “skill distance”.

<8. Specification of Skill (Attribute) Having Large Effect on Motion>

The evaluation information provision system may accept assignment of twokinds of attributes. More specifically, the evaluation informationprovision system accepts assignment of a single attribute as anattribute of a first kind and further accepts assignment of two or morekinds of attributes as attributes of a second kind. The evaluationinformation provision system then calculates the score when theattribute of the first kind is combined with each of the attributes ofthe second kind. The evaluation information provision system thencompares the scores calculated for the attributes of the second kind tospecify an attribute that has a large effect on the score for theattribute of the first kind from among two or more attributes assignedas the second kind.

FIG. 18 is a diagram showing an example of the screen for acceptingassignment of two kinds of attributes.

Screen IMG31 in FIG. 18 accepts an attribute of the first kind as a“reference attribute” and accepts attributes of the second kind as“attributes for evaluation”. More specifically, the attribute “runningtime over 2 hours under 3 hours” is accepted as an attribute of thefirst kind (reference attribute). An attribute “elbow (speed)”, anattribute “knee (speed)”, and an attribute “ankle (speed)” are acceptedas attributes of the second kind (attributes for evaluation).

The attribute “elbow (speed)” means the measured value of moving speedof the elbow. The attribute “knee (speed)” means the measured value ofmoving speed of the knee. The attribute “ankle (speed)” means themeasured value of moving speed of the ankle.

When assignment as shown in FIG. 18 is accepted, CPU 910 calculatesthree scores. The first score is calculated using the motion data of thesubjects and the user that is associated with the attribute of the firstkind (running time over 2 hours under 3 hours) and associated with thefirst attribute (elbow (speed)) of the second kind.

The second score is calculated using the motion data of the subjects andthe user that is associated with the attribute of the first kind(running time over 2 hours under 3 hours) and associated with the secondattribute (knee (speed)) of the second kind.

The third score is calculated using the motion data of the subjects andthe user that is associated with the attribute of the first kind(running time over 2 hours under 3 hours) and associated with the thirdattribute (ankle (speed)) of the second kind.

CPU 910 then transmits the results of calculation of the three scores touser terminal 600. In response, CPU 610 of user terminal 600 displaysthe results on touch panel 620. FIG. 19 is a diagram showing an exampleof the display screen of the calculation results of the three scores.

Screen IMG32 in FIG. 19 shows the score for each of the three attributesassigned as attributes for evaluation, together with the item (runningtime) assigned as a reference attribute. In addition, screen IMG32collectively illustrates the respective scores of the three attributesin the form of a single chart at the bottom and shows a message (Thescores of the selected attributes for evaluation suggest that there maybe room for improvement in your elbow.) at the top to indicate which ofthe three attributes has a large effect on the reference attribute.

The message in screen IMG32 is selected by CPU 610. CPU 610 compares therespective scores of the three attributes transmitted from CPU 910 toselect the score with the lowest value and specifies the attributeassociated with the selected score as the attribute having the largesteffect on the reference attribute. The message in screen IMG32 is amessage for giving a notice of the specified attribute. This message isan example of information evaluating the degree of relevancy to theattribute of the first kind in the attributes of the second kind. Thatis, it is information representing the attribute with the highest degreeof relevancy to the attribute of the first kind, among two or moreattributes of the second kind.

Specifying the attribute having the largest effect on the referenceattribute may be executed by CPU 910.

The score of the highest value among the calculated scores may bespecified as the attribute having the largest effect.

<9. Display for a Plurality of Competing Attributes>

When an attribute is assigned as an attribute of the first kind and aplurality of (“three” in the example in FIG. 18 and FIG. 19) attributesare assigned as attributes of the second kind, the evaluationinformation provision system may further display the attributescompeting with the attribute assigned as an attribute of the first kind,as shown in FIG. 18 and FIG. 19.

FIG. 20 is a diagram showing an example of the screen displaying thedistances calculated for subject's motion data belonging to a pluralityof competing attributes, in manners different from each other.

In the example shown in FIG. 20, “running time over 2 hours under 3hours” is selected as an attribute of the first kind, and “elbow(speed)”, “knee (speed)”, and “ankle (speed)” are assigned as attributesof the second kind, as in the example shown in FIG. 18 and FIG. 19. Fiveattributes (the running times over 3 hours under 4 hours, over 4 hoursunder 5 hours, over 5 hours under 6 hours, over 6 hours under 7 hours,and over 7 hours under 8 hours) are stored as attributes competing withthe attribute of the first kind “running time over 2 hours under 3hours” in memory 930 of Web server 900. Then, in the example shown inFIG. 20, CPU 910 calculates the distance from the feature data (the oneselected from a plurality of among the motion data associated with theattribute “running time over 2 hours under 3 hours”), for the motiondata belonging to each of the five attributes in addition to the motiondata associated with the attribute “running time over 2 hours under 3hours”, for each of the attributes of the second kind. The calculateddistance is then displayed using the multidimensional scaling method, asillustrated in graphs G11 to G13 in FIG. 20.

That is, for example, in each of graphs G11 to G13, the distance fromthe feature data is visualized for each of the subject's motion datawith a running time over 2 hours under 3 hours, the subject's motiondata over 3 hours under 4 hours, the subject's motion data over 4 hoursunder 5 hours, the subject's motion data over 5 hours under 6 hours, thesubject's motion data over 6 hours under 7 hours, and the subject'smotion data over 7 hours under 8 hours.

The thick lines in graphs G11 to G13 schematically show the tendency ofdata in graphs G11 to G13. In all of graphs G11 to G13, the estimatedfinish time tends to be reduced toward the right side. That is, the usercan understand from graphs G11 to G13 that the second attribute (theacceleration of the elbow, the acceleration of the knee, theacceleration of the ankle) assigned for each of graphs G11 to G13 has arelevancy to the running time.

Furthermore, in each of graphs G11 to G13, points P11, P12, P13 areillustrated as points representing the user's motion data.

FIG. 21 is a diagram for explaining the tendency shown in each of graphsG11 to G13 in FIG. 20 in a simplified form.

Graph GV20 in FIG. 21 shows the attributes A to D as the attributes ofthe second kind and the attributes competing with it. More specifically,the distance of the motion data belonging to each of the attributes A toD from the feature data is shown by the multidimensional scaling method.The attributes A, B, C, and D represent the running time “2 hours”, “3hours”, “4 hours”, and “5 hours”, respectively.

Attributes A to D are attributes competing with each other and differentin the degree of superiority/inferiority of motion. For example, ofattributes A to D, attribute A corresponds to the most superior motion,and the superiority/inferiority is specified in the order of attributeA, attribute B, attribute C, and attribute D. As shown in FIG. 21, itcan be understood that when the tendency of the distance of motion dataforms a group for each of the attributes A to D and the arrangement ofgroups represents the relation similar to the arrangement ofsuperiority/inferiority, the attribute of the first kind has an effecton the superiority/inferiority of the attributes of the second kind.

Second Embodiment

In the evaluation information provision system in a second embodiment,information for evaluation is provided for the user's batting forminstead of the user's running form.

<1. System Overview>

FIG. 22 is a diagram for explaining an input manner of motion data inthe evaluation information provision system in the second embodiment. Asshown in FIG. 22, in the evaluation information provision system in thesecond embodiment, output of a sensor device 200 attached to a bat 80,which is an example of a tool used by a subject or a user in motion, isinputted as motion data to database 100. Sensor device 200 is, forexample, an accelerometer that detects the acceleration for three axesorthogonal to each other (X-axis, Y-axis, Z-axis) and an gyro sensorthat detects the angular velocity around the three axes (X-axis, Y-axis,Z-axis). Sensor device 200 may detect either one of the acceleration andthe angular velocity. Sensor device 200 transmits the detected output todatabase 100 and Web server 900.

In the second embodiment, an example of the attribute associated withmotion data is information indicating the category of a subject or auser (professional baseball player or amateur player). An example of theclassification belonging to the attribute is information that specifieseach player (for example, the player's name). Another example of theattribute is information indicating whether the subject or the user is aright-handed batter or a left-handed batter. Yet another example of theattribute is the material (wood or metal) of bat 80.

<2. Hardware Configuration of Sensor Device>

FIG. 23 is a block diagram showing a hardware configuration of sensordevice 200 in the second embodiment. As shown in FIG. 23, sensor device200 includes, as main components, a CPU 202 for executing a variety ofprocessing, a memory 204 for storing a program executed by CPU 202,data, and the like, an accelerometer 206 capable of detecting theacceleration in three axis directions, an gyro sensor 208 capable ofdetecting the angular velocity around each of three axes, acommunication interface (I/F) 210 for communicating with database 100,and a storage battery 212 supplying electricity to various components insensor device 200.

<3. Specific Example of Data>

FIG. 24 is a diagram showing a specific example of detection output ofsensor device 200. FIG. 24 shows the acceleration in the X-axis, theY-axis, and the Z-axis (“AccX”, “AccY”, “AccZ” in FIG. 24) and theangular velocity for the X-axis, the Y-axis, and the Z-axis (“GyroX”,“GyroY”, “GyroZ” in FIG. 24).

As shown in FIG. 24, when the subject or the user swings bat 80 (FIG.23), the value of each detection output changes about the hit point ofthe swing (“Hit point” in FIG. 24). That is, in the evaluationinformation provision system, all of the changes in detection output ofthe acceleration in the X-axis, the Y-axis, and the Z-axis and theangular velocity for the X-axis, the Y-axis, and the Z-axis reflect themotion of swing of bat 80.

<4. Display Example of Motion Data>

Also in the evaluation information provision system in the secondembodiment, Web server 900 nonlinearly transforms motion data, thencalculates the distance between motion data, and plots the distance bythe multidimensional scaling method, in the same manner as in the firstembodiment.

FIG. 25 shows an example of plots in the second embodiment. FIG. 25shows the distance for ten kinds of motion data for the attribute“amateur player”. In FIG. 25, ten kinds of motion data are identified bysigns such as “A1, M, R”.

The sign in FIG. 25 is divided into three portions, such as “A1, M, R”.The first portion “A1” specifies a subject or a user. “A” means theattribute “amateur”.

The second portion “M” specifies the kind of bat 80. “M” means metal,and “W” means wood.

The third portion “R” specifies whether the swing is right-handed orleft-handed. “R” means right-handed, and “L” means left-handed.

In the example shown in FIG. 25, the distances for a plurality of setsof motion data are visualized in the form of various kinds of data. Eachdistance shown in FIG. 25 corresponds to one swing. That is, in FIG. 25,the distance corresponding to each of a plurality of swings isvisualized when a subject or a user takes a swing multiple times withthe same combination of attributes.

In the display in FIG. 25, for the attribute “amateur”, the distance formotion data is visualized in different manners (different kinds of plotssuch as □, ∘) according to the classification “subject or user”. Thus,according to the perspective that a user can compare the distributionsamong the the distances for the user's motion data and the distances forthe subject's motion data, to minimize the skill distance against theuser who acquires knowledge that which degree(s) affect(s) the user'smotion (swing) of the targeted subject's motion (swing).

When the display in FIG. 25 is performed for each of the user's motiondata at a plurality of times, the user can acquire knowledge as towhether the user's motion (swing) is coming close to or far away fromthe targeted subject's motion (swing) in a time line.

FIG. 26 is another example of plots in the second embodiment. In FIG.26, the distances for nine kinds of motion data for the attribute“professional player” are visualized. In FIG. 26, the nine kinds ofmotion data are identified by signs such as “P1, W, L” in the samemanner as in FIG. 25.

The sign in FIG. 26 is divided into three portions in the same manner asthe signs in FIG. 25. The first portion “P1” specifies a subject or auser. “P” means the attribute “professional”. The second portion “W”specifies the kind of bat 80. The third portion “L” specifies whetherthe swing is right-handed or left-handed.

In the display in FIG. 26, the distances for motion data are visualizedin different manners (different kinds of plots such as □, ∘) accordingto the classification “subject or user” for the attribute“professional”. In particular, the display in FIG. 26 has a tendencythat is not observed in the display in FIG. 25, that is, the range ofdistribution of distances for the motion data is specified by whetherthe swing is right-handed or left-handed. In FIG. 26, the range in whichright-handed swings are distributed is schematically denoted by a rangeC01. The range in which left-handed swings are distributed isschematically denoted by a range C02.

In the evaluation information provision system in the second embodiment,both of the display in FIG. 25 and the display in FIG. 26 appear on userterminal 600 to allow the user to acquire knowledge regarding thetendency that was not observed in the distribution of the amateurplayers but done in one of the professional players.

In the second embodiment, the user can designate a target player. Inaccordance with the designation, Web server 900 generates data thatdisplays the distances for only two kinds of motion data, that is, datathat displays only the distance for the user's motion data and thedistance for the motion data of the player designated by the user, onuser terminal 600, and transmits the generated data to user terminal600. This allows the user to directly compare the tendency of the user'smotion with the tendency of the designated player's motion.

Also in the second embodiment, CPU 910 of Web server 900 can acceptassignment of one attribute as an attribute of the first kind andassignment of two or more attributes as attributes of the second kind.In response, CPU 910 can calculate and output the user's score for theattribute of the first kind, for each of the attributes of the secondkind.

An example of the attribute of the first kind is “professional baseballplayer”. Examples of the attributes of the second kind are “powerhitter” and “contact hitter”. In such an example, CPU 910 calculates thescore for each of the attribute “power hitter” and the attribute“contact hitter”. That is, CPU 910 selects feature data from a pluralityof the motion data associated with the attribute “professional baseballplayer” and associated with the attribute “power hitter”, among motiondata stored in database 100. The statistical distance between theselected motion data and the feature data is then calculated, and thestatistical distance between the user's motion data and the feature datais also calculated. Using these statistical distances, the user's scorefor the attribute “professional baseball player” and the attribute“power hitter” is calculated.

CPU 910 also calculates the user's score for the attribute “professionalbaseball player” and the attribute “contact hitter” in the same manner.

CPU 910 then transmits the two scores calculated for the user asdescribed above to user terminal 600.

CPU 610 of user terminal 600 specifies the attribute associated with thehighest score from the transmitted two scores. CPU 610 then displays thespecified attribute as the attribute specified as the type of the user'sswing.

FIG. 27 is a diagram showing an example of the display of the attributespecified as the type of the user's swing on user terminal 600. ScreenIMG41 in FIG. 27 displays the respective scores of the two attributesassigned as attributes of the second kind (“64 points” for the attribute“power hitter” and “80 points” for the attribute “contact hitter”) aswell as the attribute “contact hitter” specified as the type of theuser's swing.

The embodiments and modifications disclosed here should be understood asbeing illustrative rather than being limitative in all respects. Thescope of the present invention is shown not in the foregoing descriptionbut in the claims, and it is intended that all modifications that comewithin the meaning and range of equivalence to the claims are embracedhere.

In the present disclosure, the provision of the score of the user'smotion and information accompanying the score for a running form hasbeen explained as the first embodiment. The provision of the score ofthe user's motion and information accompanying the score for a battingform has been described as the second embodiment. It should be notedthat the motion targeted by the technique in the present disclosure isnot limited thereto. The motion targeted by the technique in the presentdisclosure may include motions of sports other than those describedabove (for example, the user's motion in ski sliding) and motions otherthan those in sports (for example, the user's motion in walkingtraining). That is, the technique in the present disclosure can usemotion data acquired for every kind of motions to provide the score forthe motion and information accompanying the score.

REFERENCE SIGNS LIST

-   -   100 database, 200 sensor device, 500 arithmetic processing unit,        600 user terminal, 610, 910 CPU, 800 running machine, 900 Web        server.

The invention claimed is:
 1. An evaluation information provision systemfor outputting information evaluating a motion of a user, using two ormore sets of motion data of a subject stored in association with anattribute and motion data of the user, comprising: a gyro sensor, anacceleration sensor, or a camera configured to acquire motion data of auser; a processor configured to calculate a statistical distance betweentwo or more sets of motion data and the motion data of the user; and aninterface configured to acquire assignment of an attribute, wherein theprocessor is configured to calculate a score of the user for theattribute acquired by the interface, the interface is configured tooutput the score of the user calculated by the processor, and theprocessor is configured to select feature data representing a feature ofthe attribute acquired by the interface, based on the statisticaldistance calculated by the processor for motion data associated with theattribute acquired by the acquisition unit among the two or more sets ofmotion data, and to calculate the score of the user for the attributeacquired by the interface, using a statistical distance between themotion data associated with the attribute acquired by the interface andthe feature data, and a statistical distance between the motion data ofthe user and the feature data.
 2. The evaluation information provisionsystem according to claim 1, wherein motion data represents each ofmotions of one or more parts of a subject or a user.
 3. The evaluationinformation provision system according to claim 1, wherein motion datarepresents each of motions of one or more parts in a tool operated by asubject or a user.
 4. The evaluation information provision systemaccording to claim 1, wherein the interface is configured to acceptinput of assignment of an attribute.
 5. The evaluation informationprovision system according to claim 1, wherein the attribute includes aclassification for superiority/inferiority of a motion.
 6. Theevaluation information provision system according to claim 5, whereinthe classification is a diversity of marathon running times.
 7. Theevaluation information provision system according to claim 1, whereinthe attribute includes a classification for a property other thansuperiority/inferiority of a motion.
 8. The evaluation informationprovision system according to claim 7, wherein the classificationdistinguishes a person who makes a motion or a tool used in a motion. 9.The evaluation information provision system according to claim 1,wherein the processor is configured to select motion data having asmallest mean value of statistical distances from other motion data, asthe feature data, from a plurality of motion data associated with theattribute acquired by the interface.
 10. The evaluation informationprovision system according to claim 1, wherein the processor isconfigured to set an order for the statistical distance from the featuredata, in the motion data of the user and the motion data associated withthe attribute acquired by the interface, and to calculate the score ofthe user based on the order in the user's motion data.
 11. Theevaluation information provision system according to claim 1, whereinthe processor is configured to calculate the score of the user for eachof the motion data of the user at a plurality of timings, and theinterface is configured to output the score of the user for each of theplurality of timings.
 12. The evaluation information provision systemaccording to claim 11, wherein the interface is configured to furtheroutput information evaluating whether a change of scores at theplurality of timings rises or falls over time.
 13. The evaluationinformation provision system according to claim 1, wherein the interfaceis configured to acquire assignment of different kinds of attributes.14. The evaluation information provision system according to claim 13,wherein the interface is configured to acquire assignment of anattribute of a first kind and an attribute of a second kind, theattribute of the second kind includes two or more kinds of attributes,the processor is configured to acquire feature data that is motion datarepresenting a feature of the attribute of the first kind, for each kindof the attributes of the second kind, and to calculate the score of theuser for the attribute of the first kind, for each kind of theattributes of the second kind, and the interface is configured to outputthe score of the user for the attribute of the first kind, for each kindof the attributes of the second kind.
 15. The evaluation informationprovision system according to claim 14, wherein the interface isconfigured to compare the scores for different kinds of the attributesof the second kind to output information evaluating the degree ofrelevancy to the attribute of the first kind in two or more kinds ofattributes of the second kind.
 16. The evaluation information provisionsystem according to claim 14, wherein the interface is furtherconfigured to output a statistical distance calculated by the processorfor motion data associated with an attribute to be compared with theattribute of the first kind, in a manner that identifies each of theattribute of the first kind and the attribute to be compared.
 17. Anevaluation information provision method executed by a processor tooutput information evaluating a motion of a user, using two or more setsof motion data of a subject stored in association with an attribute andmotion data of the user, comprising: collecting motion data of the userusing a gyro sensor, an acceleration sensor, or a camera; calculating astatistical distance between each of the two or more sets of motion dataand the motion data of the user; acquiring assignment of an attribute;selecting feature data representing a feature of the acquired attributefrom a plurality of motion data of the acquired attribute, based on astatistical distance calculated for motion data associated with theacquired attribute among the two or more sets of motion data, andcalculating a score of the user for the acquired attribute, using astatistical distance between motion data associated with the acquiredattribute and the feature data and a statistical distance between themotion data of the user and the feature data; and outputting thecalculated score of the user.
 18. An evaluation information provisionsystem for outputting information evaluating a motion of a user, usingtwo or more sets of motion data of a subject stored in association withan attribute and motion data of the user, comprising: a gyro sensor, anacceleration sensor, and a camera configured to acquire motion data of auser; a processor configured to calculate a statistical distance betweentwo or more sets of motion data and the motion data of the user; and aninterface configured to acquire assignment of an attribute, wherein theprocessor is configured to calculate a score of the user for theattribute acquired by the interface, the interface is configured tooutput the score of the user calculated by the processor, and theprocessor is configured to select feature data representing a feature ofthe attribute acquired by the interface, based on the statisticaldistance calculated by the processor for motion data associated with theattribute acquired by the acquisition unit among the two or more sets ofmotion data, and to calculate the score of the user for the attributeacquired by the interface, using a statistical distance between themotion data associated with the attribute acquired by the interface andthe feature data, and a statistical distance between the motion data ofthe user and the feature data.